home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / cool / cool.lha / ice / CCC / config.h < prev    next >
Text File  |  1991-09-04  |  6KB  |  273 lines

  1. /*
  2.  
  3.  
  4.  Copyright (C) 1990 Texas Instruments Incorporated.
  5.  
  6.  Permission is granted to any individual or institution to use, copy, modify,
  7.  and distribute this software, provided that this complete copyright and
  8.  permission notice is maintained, intact, in all copies and supporting
  9.  documentation.
  10.  
  11.  Texas Instruments Incorporated provides this software "as is" without
  12.  express or implied warranty.
  13.  
  14.  
  15.  *
  16.  * Defaults for compiler configuration.
  17.  *
  18.  * CC_libdir    default cpp include library
  19.  * CPPARGS    default cpp arguments
  20.  * CCFRONTARGS    default cfront arguments
  21.  * CCARGS    default cc arguments
  22.  * OBJ_Suffix    File extension for object files
  23.  * CC_Suffix    File extension for translated source
  24.  * CC_Library    default link library name
  25.  * CC_lib       library name
  26.  * CC_rt    For G++ only - runtime library object
  27.  *
  28.  * CC_cpp    cpp pathname
  29.  * CC_compiler    C++ translator or compiler pathname
  30.  * CC_cc    Standard C language compiler pathname
  31.  * CC_as    Assembler pathname
  32.  * CC_ld    Linker pathname
  33.  * CC_munch    C++ muncher pathname
  34.  * CC_patch    C++ patcher pathname
  35.  */
  36.  
  37. /* CC_libdir */
  38. #  define CC_libdir ""
  39.  
  40. /* C preprocessor */
  41. #if !defined(CC_cpp)
  42. # if defined(DOS)
  43. #   define CC_cpp "\\ice\\cpp\\cpp"
  44. # elif defined(M_XENIX)
  45. #   define CC_cpp "/u/ice/cpp/cpp"
  46. # else
  47. #   define CC_cpp "/tan/u1/ice/cpp/cpp"
  48. # endif
  49. #endif
  50.  
  51. /* CC_compress */
  52. #if !defined(CC_compress)
  53. # if defined(DOS)
  54. #   define CC_compress "\\ice\\id_comp"
  55. # elif defined(M_XENIX)
  56. #  define CC_compress "/u/ice/id_comp"
  57. # else
  58. #  define CC_compress ""
  59. # endif
  60. #endif
  61.  
  62.  
  63. /* CPPARGS */
  64. #if defined(hpux)
  65. #  define CPPARGS ""
  66. #elif defined(mips)
  67. #  define CPPARGS "-B -DLANGUAGE_C -C"
  68. #elif defined(DOS)
  69. /*
  70.  * Run under protected mode
  71.  * Don't use pascal, near, far, etc.
  72.  */
  73. #  define CPPARGS "-D__PROT__"
  74. #elif defined(M_XENIX)
  75. #  define CPPARGS "-DM_I86 -DM_I86SM -DM_SDATA -DM_STEXT -DM_I386 -DM_XENIX -DM_BITFIELDS -DM_SYS5 -DM_SYS3 -DM_SYSIII -DM_WORDSWAP -C"
  76. #else
  77. #  define CPPARGS "-C"
  78. #endif
  79.  
  80. /* CCFRONTARGS */ 
  81. #if defined(DOS)
  82. /*
  83.  * +Q        Donot print logo
  84.  * +zl30000  Lex input buffer size
  85.  * +zf127    Max of 127 files??
  86.  * +MX       Optimization flag
  87.  * +ME       Use extended keywords. e.g. CDECL, PASCAL
  88.  */
  89. #  define CCFRONTARGS "+Q +Zl30000 +zf127 +MX +ME"
  90. #elif defined(M_XENIX)
  91. #  define CCFRONTARGS "+Z30000 +zf127"
  92. #else
  93. #  define CCFRONTARGS ""
  94. #endif
  95.  
  96. /* CCARGS */
  97. #if defined(DOS)
  98. /* 
  99.  * -w      Don't print warning messages
  100.  * -G2     80286 instruction set
  101.  * -Gt1    Put all static and global data over 1 byte in another segment
  102.  * -nologo Suppress copyright print
  103.  * -AL     Large storage model
  104.  * -Zp     Pack data structures
  105.  * -Zi     object includes debugging information
  106.  */
  107. /*
  108.  * -Dconst= fixes bug in code generated by Glockenspeil C++ which causes
  109.  *          Microsoft C to error about assigning to a const lvalue
  110. */
  111. #  define CCARGS "-w -nologo -G2s -Gt1 -Alfu -Dconst="
  112. #elif defined(M_XENIX)
  113. /*
  114.  * -w     Don't print warning messages
  115.  * -g     object includes debugging information
  116.  * -Zl    don't put default library information in object module
  117. */
  118. #  define CCARGS ""
  119. #else
  120. #  define CCARGS ""
  121. #endif
  122.  
  123. /* CC_compiler (translator/compiler) */
  124. #if !defined(CC_compiler)
  125. #   if defined(DOS) || defined(M_XENIX)
  126. #       define CC_compiler "cfxx"
  127. #   elif defined(cfront)
  128. #       define CC_compiler "cfront"
  129. #   elif defined(cfront2)
  130. #       define CC_compiler "cfront2"
  131. #   elif defined(cfront21)
  132. #       define CC_compiler "cfront21"
  133. #   else
  134. #       define CC_compiler "g++"
  135. #   endif
  136. #endif
  137.  
  138. /* OBJ_Suffix (compiler output, linker input) */
  139. #if !defined(OBJ_Suffix)
  140. # if defined(DOS)
  141. #   define OBJ_Suffix ".obj"
  142. # else
  143. #   define OBJ_Suffix ".o"
  144. # endif
  145. #endif
  146.  
  147. /* CC_suffix (cpp output suffix, compiler input suffix,  */
  148. #if !defined(CC_suffix)
  149. # if defined(DOS)
  150. #   define CC_suffix ".i"
  151. # elif defined(M_XENIX)
  152. #   define CC_suffix ".c"
  153. # elif defined(cfront)
  154. #   define CC_suffix "..c"
  155. # elif defined(cfront2) || defined(cfront21)
  156. #   define CC_suffix ".c"
  157. # else
  158. #   define CC_suffix ".s"
  159. # endif
  160. #endif
  161.  
  162. /*  CC_library (library to search) */
  163. #if !defined(CC_library)
  164. #   if defined(DOS) && !defined(cfront2)
  165. #       define CC_library "LLcxx5ep"
  166. #   elif defined(DOS) && defined(cfront2)
  167. #       define CC_library "Lcxxce"
  168. #   elif defined(M_XENIX)
  169. #       define CC_library "-lcxx"
  170. #   elif defined(cfront21)
  171. #       define CC_library "-lC21"
  172. #   elif defined(cfront2)
  173. #       define CC_library "-lC2"
  174. #   elif defined(cfront)
  175. #       define CC_library "-lC"
  176. #   else
  177. #       define CC_library "-lgnulib"
  178. #   endif
  179. #endif
  180.  
  181. /*  CC_lib  (utility for maintaining libraries) */
  182. #if !defined(CC_lib)
  183. #   if defined(DOS)
  184. #       define CC_lib "Lib"
  185. #   else
  186. #       define CC_lib "ar"
  187. #   endif
  188. #endif
  189.  
  190. /*  CC_rt  (G++ only runtime support) */
  191. #if !defined(CC_rt)
  192. #   if defined(cfront) || defined(cfront2) || defined(cfront21)
  193. #       define CC_rt ""
  194. #   else
  195. #       define CC_rt "/usr/local/lib/crt0+.o"
  196. #   endif
  197. #endif
  198.  
  199. /* CC_cc (compile and link routine) */
  200. #if !defined(CC_cc)
  201. #  if defined(DOS)
  202. #    define CC_cc "cl"
  203. #  elif defined(M_XENIX)
  204. #    define CC_cc "cc"
  205. #  else
  206. #    define CC_cc "cc"
  207. #  endif
  208. #endif
  209.  
  210. #if !defined(CC_as)
  211. #   define CC_as "as"
  212. #endif
  213.  
  214. /*  CC_ld  (standalone linker) */
  215. #if !defined(CC_ld)
  216. # if defined(DOS)
  217. #   define CC_ld "Link"
  218. # elif defined(M_XENIX)
  219. #   define CC_ld "cc"
  220. # else
  221. #   define CC_ld "cc"
  222. # endif
  223. #endif
  224.  
  225. /* CC 1.2 uses munch, CC 2.0 and 2.1 uses patch */
  226. #if defined(cfront) || defined(CC_munch)
  227. #   define CC_domunch
  228. #endif
  229.  
  230. /*  CC_munch  (routine that modifies linked object for static inits) */
  231. #if !defined(CC_munch)
  232. #  if defined(DOS) || defined(M_XENIX)
  233. #   define CC_munch "mxx"
  234. #  elif defined(cfront)
  235. #   define CC_munch "munch"
  236. #  elif defined(cfront2)
  237. #   define CC_munch "munch2"
  238. #  elif defined(cfront21)
  239. #   define CC_munch "munch21"
  240. #  endif
  241. #endif
  242.  
  243. /*  CC_patch  (routine for static inits) */
  244. #if !defined(CC_patch)
  245. # if defined(DOS) || defined(M_XENIX)
  246. #  define CC_patch ""
  247. # elif defined(cfront)
  248. #  define CC_patch "patch"
  249. # elif defined(cfront2)
  250. #  define CC_patch "patch2"
  251. # elif defined(cfront21)
  252. #  define CC_patch "patch21"
  253. # endif
  254. #endif
  255.  
  256. #if !defined(CC_mv)
  257. # if defined(DOS)
  258. #   define CC_mv "ren"
  259. # elif defined(M_XENIX)
  260. #   define CC_mv "mv"
  261. # else
  262. #   define CC_mv "mv"
  263. # endif
  264. #endif
  265.  
  266. #if !defined(CC_tmp)
  267. # if defined(DOS)
  268. #  define CC_tmp "E:\\"
  269. # else
  270. #  define CC_tmp "/tmp/"
  271. # endif
  272. #endif
  273.